Model Driven Development: Implementing a New Software Development Paradigm in Computer Science and Engineering Courses

نویسندگان

  • John B. Bowles
  • Caroline M Eastman
چکیده

Model Driven Development (MDD) is the first truly new paradigm for software development in 50 years. Since the advent of block-structured and procedural languages in the 1950s software has been developed using if-then-else control constructs, do-while and for loops for iteration, and subroutine calls. With MDD software is developed by specifying a high-level, abstract model of the application, typically in a language such as UML (Unified Modeling Language) and then generating the code through a series of automated, pattern-driven transformations. Ideally, all the application code could be generated from the model; in practice, with today’s technology, only about 70% of the code can be produced in this manner; the rest must be hand coded within the framework produced by the model. Just as programming in a high-level language requires such tools as a compiler to translate the program into executable code, the MDD paradigm requires tools to translate the UML model into code that can then be compiled and executed. During the Fall 2003 term we applied the MDD paradigm using Compuware’s OptimalJTM MDD development tool to projects in our Capstone Software Engineering Project course. In the course the students developed requirements for a J2EE type application (typically an on-line store). Working in teams, they constructed a UML model for the application, primarily the class diagram, but also including the use case models and sequence diagrams. OptimalJ was used to build a first prototype and then the prototype was improved through several iterations by refining the business rules and improving the web-page presentation. Testing was integrated with the development throughout the development process. An interesting challenge was how to effectively use teams in developing the software. The MDD paradigm and supporting software will be used in two Spring 2004 courses, the Capstone Software Engineering Project course and a Database System Design course.

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Declarative Semantics in Object-Oriented Software Development - A Taxonomy and Survey

One of the modern paradigms to develop an application is object oriented analysis and design. In this paradigm, there are several objects and each object plays some specific roles in applications. In an application, we must distinguish between procedural semantics and declarative semantics for their implementation in a specific programming language. For the procedural semantics, we can write a ...

متن کامل

A Model-Driven Decision Support System for Software Cost Estimation (Case Study: Projects in NASA60 Dataset)

Estimating the costs of software development is one of the most important activities in software project management. Inaccuracies in such estimates may cause irreparable loss. A low estimate of the cost of projects will result in failure on delivery on time and indicates the inefficiency of the software development team. On the other hand, high estimates of resources and costs for a project wil...

متن کامل

Framework for Using Patterns in Model-Driven Development

Awareness of software's importance in today's environment each day is growing. As new types of applications appears, need for modern, high quality methodological ways of their development is rising. Last few years researches in software industry move in different directions. This doctoral dissertation is based on currently most skeptical software development paradigm called Model Driven Develop...

متن کامل

Objects Identification in Object-Oriented Software Development - A Taxonomy and Survey on Techniques

Analysis and design of object oriented is onemodern paradigms for developing a system. In this paradigm, there are several objects and each object plays some specific roles. Identifying objects (and classes) is one of the most important steps in the object-oriented paradigm. This paper makes a literature review over techniques to identify objects and then presents six taxonomies for them. The f...

متن کامل

ModelSec: A Generative Architecture for Model-Driven Security

Increasingly, the success of software systems depends largely on how their security requirements are satisfied. However, developers are challenged in implementing these requirements, mainly because of the gap between the specification and implementation, and the technical complexities of the current software infrastructures. Recently, Model-Driven Security has emerged as a new software developm...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2003